// 导入创建仓库的方法，导入中间件
import { createStore,applyMiddleware} from 'redux'
// 导入异步处理中间件
import thunk from 'redux-thunk'
import actions from './actions.js'
import { LoginAction } from './actionSync'
// 初始state
var initState = {
    num:5,user:{},dynaRoutes:[]
}
// 数据处理器
function reducer(state=initState,action){
   
   switch (action.type) {
    // 如果动作的参数是ADD
    // 返回解构的state，更新num的位state现在的值+action的value
    case "ADD":
        return {...state,num:state.num+action.value}
    case "SET_USER":
        return {...state,user:action.value}
    case "SET_ROUTES":
        return {...state,dynaRoutes:action.value}
    default:
        return state;
   }
}

// 创建仓库,添加异步处理中间件
const store = createStore(reducer,applyMiddleware(thunk));
// 导出仓库和等着
export {store,actions,LoginAction};

// 定义异步登录方法